package org.springblade.modules.sga.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.modules.policy.entity.Policy;
import org.springblade.modules.sga.vo.SgaHotPolicyVO;
import org.springblade.modules.sga.vo.SgaPolicyVO;
import org.springblade.modules.sga.vo.SgaRelatedPolicyVO;

import java.util.List;

public interface SgaPolicyMapper extends BaseMapper<Policy> {

	List<SgaPolicyVO> selectTop(int top);

	List<SgaHotPolicyVO> selectTopHot(int top);

	SgaPolicyVO getById(Long id);

	void increaseViewCount(Long id);

	List<SgaPolicyVO> selectPolicyPage(Integer policyType, Long levelId, Character industryType, String policyName, IPage<SgaPolicyVO> page);

	List<SgaPolicyVO> selectPushPolicyPage(Boolean isPrecisePush, String enterpriseSpecial, IPage<SgaPolicyVO> page);

	Integer countPolicy();

	List<SgaRelatedPolicyVO> selectRelatedPolicy(String policyIds);
}
